Up-Converter for Ethernet Physical Layer

ABSTRACT

An interface device includes a first connector to connect to a port of a switch, where the switch sends data packets at a first rate and a second connector to connect to a port of a device, where the device sends data packets at a second rate slower than the first rate. A physical control layer connects to the first connector and the second connector to control a flow of data packets. The physical control layer throttles down the flow of data packets to the second connector when the data packets are travelling from the first connector to the second connector, and matches a speeds of the flow of data packets to the first connector when the data packets are travelling from the second connector to the first connector.

TECHNICAL FIELD

This disclosure relates to sending data packets in a communication network, and to up-converters and throttle control to control the flow of data packets for the Ethernet physical layer.

BACKGROUND

Advances in electronics and communication technologies can result in communication networks capable of communicating data at different speeds. Consumers may be able to send and receive data across multitudes of sources at higher reliability and communication rates. Technology can continue to advance and communication networks grow in size, frequency of use and capability. Data can be communicated with greater efficiency, reliability and quality.

BRIEF DESCRIPTION OF THE DRAWINGS

The systems and methods may be better understood with reference to the following drawings and description. In the figures, like reference numerals designate corresponding parts throughout the different views.

FIG. 1 is a block diagram of an exemplary network.

FIG. 2 is a block diagram of the exemplary switch connected with the access points via a small form factor module.

FIG. 3 is a block diagram of the exemplary small form factor interface for performing up-conversion.

FIG. 4 is a flowchart of an exemplary process for connecting a faster data flow rate with a slower data flow rate.

DETAILED DESCRIPTION

The systems and methods described relate to an up-converter for an Ethernet physical layer device to enable systems to operate a slower line rate with a faster line rate. For purposes of explanation line rates of 2.5 Gbit/s and 10 Gbit/s are used, but the systems and methods can also be used with other differing line rates. The systems and methods can allow the Ethernet physical layer to match speeds between a line and system interface at the physical layer for legacy switch systems without changing legacy switches. The systems and methods can allow new line rates, e.g., 2.5 Gbit/s, to operate with existing switch interfaces having faster speeds, e.g., 10 Gbit/s, while sustaining line throughput.

FIG. 1 is a block diagram of an exemplary network 100. The network 100 can be used for computer data traffic, telecommunication traffic, etc. The system 100 can be used to send information from servers 120A, B, C, etc. to devices, e.g., an Internet protocol (IP) phone 102, a laptop 104, a desktop computer 106, a printer 108 and a wireless access point 110A, B, etc. The information can be sent locally or remotely, e.g., over local area networks (LAN) and over wide area networks (WAN) 130 such as the Internet. The servers 120A, B, C can be connected with the devices through a router 140 and a switch or controller, hereinafter switch 150. Other devices can also connect to the switch 150, e.g., a tablet 160, televisions, phones, personal digital assistants (PDAs), and other devices cable of connecting to a network.

Data packets to and from the servers 120A, B, C can be transmitted to and from the devices, e.g., access points 110A, B, via a router 140 and the switch 150, etc. The router 140 and the switch 150 can be implemented as separate devices or together in a single device. Devices, e.g., access points 110A, B, can also communicate with each other via a local area network, e.g., via the Ethernet. The switch 140 includes a media access control (MAC) 170 to accommodate the Ethernet packet traffic. A small form factor (SFP) module 200 can be connected between the switch 150 and the access points 110A, B, or other devices.

FIG. 2 is a block diagram of the exemplary switch 150 connected with the access points 110A, B or other devices via SFP module 200. The other devices can include a home router 201 and any of the devices of FIG. 1, etc. The SFP module 200 can connect to an uplink port or other port of the switch 150. The switch 150 may transmit data at speed A, e.g., 10 Gbit/s, and the access points 110A, B, or other devices, e.g., IP phone 102, laptop 104, etc., may transmit data at a different speed B, e.g., 2.5 Gbit/s.

The SFP module 200 includes a buffer 202 in memory, a media access control (MAC) layer/up-converter controller 204 and an inserter 206. More or less components can be used depending on an implementation. The SFP module 200 including such components can accommodate up converting the speed of the data transmitted at 2.5 Gbit/s to the 10 Gbit/s data rate of the switch 150. Therefore, instead of redesigning the switch 150 to accommodate 2.5 Gbit/s, the SFP 200 module can plug into a port of the switch 150 or other device to handle up converting.

For purposes of explanation, the buffer 202, MAC layer/up-converter controller 204 and inserter 206 are housed in the SFP module 200, but other housings can be used that connect, either internally or externally, to the switch 150 or other device. A cable 210, e.g., a copper twisted pair Ethernet cable having an RJ45 connector, can be used to connect one end of the SFP module 200 to the access point 110A, B, etc. Connector 220 can be used to connect the SFP module 200 and a port 230 of the switch 150. Ethernet signals can be sent from the access point 110A, B, etc. at speed A, e.g., 2.5 Gbit/s or higher, and the connector 220 can up-convert them to speed B, e.g., 10 Gbit/s. The systems and methods are described for 2.5 Gbit/s and 10 Gbit/s, but other speed conversions can be accommodated such as 4 Gbit/s to 10 Gbit/s or 20 Gbit/s, etc.

FIG. 3 is a block diagram of the exemplary SFP module 200 for performing a physical layer up-conversion and handling of different line rates for devices connected with the SFP module 200. The 2.5 Gbit/s devices such as access points 110A, B, etc. may be used since they can cost less and use less power than the 10 Gbit/s devices. The switch 150 may support a higher line rate than the access points 110A, B, etc., e.g., 10 Gbit/s speed versus 2.5 Gbit/s speed. To accommodate a 2.5 Gbit/s physical layer to work with 10 Gbit/s interface, the SFP 200 provides for up-conversion. The physical layer system can operate at a 2.5 Gbit/s line rate through a 10 Gbit/s interface for legacy units. By up-converting data traffic from 2.5 Gbit/s to 10 Gbit/s and throttling data traffic from 10 G/bit/s to 2.5 Gbit/s, the existing system with 10 Gbit/s interface can accommodate 2.5 Gbit/s without physically changing the switch 150.

To perform up-conversion from the slower to faster devices and to throttle control from the faster to slower devices, the SFP module 150 can include buffer 202, MAC layer/up-converter controller 204 and inserter 206. These components can manage different line rates between the switch 150 and other peripherals such as the access points 110A, B. The inserter 206 can also provide for multiplexing functionality. The buffer 202, MAC layer/up-converter controller 204 and inserter 206 can be incorporated into a physical layer PHY 330 of the SFP module 150. The buffer 202 can include enough memory space to store two or more packets at a time. If packets are 2KB in size, a 4KB buffer can be used, and if packets are 10KB is size, a 20KB buffer can be used. Other sized buffers can be used depending upon an implementation.

The buffer 202 received traffic flow from the 10 Gbit/s device at 340. The traffic is sent from the buffer to the 2.5 Gbit/s device at 345. To throttle traffic from faster to slower devices, the MAC layer/up-converter controller 204 can monitor at 348 a status of the buffer 202. As the buffer 202 fills to capacity the MAC layer/up-converter controller 204 can send notifications the switch 150 that the buffer 202 is filling up. For example, the MAC layer/up-converter controller 204 can generate an Ethernet pause command to instruct the switch 150 to temporarily stop sending packets. The MAC layer 170 of the switch 150 can de-packetize the command packet to read the command sent by the MAC layer/up-converter controller 204 to temporarily stop sending packets. The switch 150 can then notify the sources sending the packets in the system 100, e.g., the servers 120A, B, C, to temporarily stop sending data.

To send the pause command to the switch 150, when the MAC layer/up-converter controller 202 detects at 348 that the buffer 202 is full, or has passed a fullness threshold, the MAC layer/up-converter controller 204 can create a pause command packet and at 350 send the pause command packet to the inserter 206. The inserter 206 can insert the pause command packet into the data stream 360 coming from the access point 310A, B, etc and output the updated data stream at 365. The pause command packet can then reach the switch 150 to notify the switch 150 to pause the transmission of data packets.

As the buffer 202 empties and a threshold is passed allowing the buffer 202 to store more data, the MAC layer/up-converter controller 204 can generate and send a command to be interpreted by the MAC 170 of the switch 150 to allow more data to be sent. The source, e.g., server 120A, B, C, etc., receives the command and begins to send more data. Therefore, MAC layer/up-converter controller 204 allows for speed throttling of the flow of data packets from the 10 Gbit/s switch 150 to the 2.5 Gbit/s devices.

Since the switch 150 can handle 10 Gbit/s data flow, the inserter 206 can add the pause commands to the 2.5 Gbit/s data stream 360 without affecting a flow of the data stream 360. The MAC layer/up-converter controller 204 can also up-convert the data flow to match the speed from 2.5 Gbit/s to 10 Gbit/s, e.g., by adding idle codes to the data stream 360. The MAC layer/up-converter controller 204 can send at 350 the idle codes to the inserter 206 to be inserted into the data stream 360. The MAC layer/up-converter controller 204 can determine when to add the idle codes and how many idle codes to add by monitoring at 370 the flow of the data stream 360. For example, the MAC layer/up-converter controller 204 can add 7.5 Gbit/s of data to the 2.5 Gbit/s data stream 360. The data can include the idle codes and pause/resume commands as described above. Therefore, the MAC layer/up-converter controller 204 up-converts the speed of 2.5 Gbit/s to 10 Gbit/s, e.g., to match the 10 Gbit/s speed of switch 150.

FIG. 4 is a flowchart of an exemplary process for connecting a faster data flow rate with a slower data flow rate. The PHY 330 can detect incoming data packets (400). The PHY 330 can determine if the data packets are moving from a faster rate device to a slower rate device or from a slower rate device to a faster rate device (410). If the data packets are moving from the faster rate device to the slower rate device, the PHY 330 can determine if the buffer 202 is full (420). If the buffer 202 is full, the PHY 330 can throttle down a flow of the data packets when needed, e.g., by having the MAC layer/up-converter controller 204 send a data packet containing a pause command to the switch 150 (430). If the buffer 202 is not full the flow of data packets can continues to be sent to the slower rate device (440).

When the data packets are moving from the slower rate device to the faster rate device, the MAC layer up-converter controller 204 can up-convert the data packets to the faster rate (450), e.g., by inserting idle codes. For example, the PHY 330 can match the speed of the flow of the data packets to the rate of the faster device. The faster device knows to ignore the idle codes.

While various embodiments have been described, it will be apparent that many more embodiments and implementations are possible. Accordingly, the systems and methods are not to be restricted except in light of the attached claims and their equivalents. 

What is claimed is:
 1. An interface device, comprising: a first connector to connect to a first device, where the first device sends data packets at a first rate; a second connector to connect to a second device, where the second device sends data packets at a second rate slower than the first rate; and a physical layer connected to the first connector and the second connector to control a flow of data packets, where the physical layer throttles down the flow of data packets to the second connector when the data packets are travelling from the first connector to the second connector, and where the physical layer matches a speed of the flow of data packets to the first connector when the data packets are travelling from the second connector to the first connector.
 2. The interface device of claim 1 further including a small form factor module, where the physical layer is housed in the small form factor module.
 3. The interface device of claim 2 where the first connector comprises a small form factor connection to the first device.
 4. The interface device of claim 1 where the second connector comprises an Ethernet connection.
 5. The interface device of claim 1 further comprising a media access control layer, where the media access control layer generates a pause command packet to send to the first device to throttle the flow of data packets.
 6. The interface device of claim 5 further comprising a buffer connected to the media access control layer, the buffer to store received data packets, where the media access control layer generates the pause command when the buffer is full.
 7. The interface device of claim 1 where the first device comprises a switch.
 8. The interface device of claim 1 where the second device comprises an access point.
 9. The interface device of claim 1 where the first rate comprises 10 Gbit/s.
 10. The interface device of claim 1 where the second rate comprises 2.5 Gbit/s.
 11. A method for transferring data packets, comprising: detecting incoming data packets; determining if the data packets are moving from a faster rate device to a slower rate device or from a slower rate device to a faster rate device; when the data packets are moving from the faster rate device to the slower rate device, throttling a flow of the data packets; and when the data packets are moving from the slower rate device to the faster rate device, up converting the data packets to the faster rate.
 12. The method of claim 11 further comprising buffering data packets in a data buffer sent between the faster rate device and the slower rate device.
 13. The method of claim 12 further comprising pausing a flow of data packets when the data buffer is full.
 14. The method of claim 11 where up converting comprises matching the speed of the flow of data packets to the faster rate.
 15. The method of claim 14 where matching the speed comprises adding idle codes.
 16. The method of claim 11 where the faster rate comprises 10 Gbit/s.
 17. The method of claim 11 where the slower rate comprises 2.5 Gbit/s.
 18. A device, comprising: a housing containing a media access control layer; and the media access control layer to control a flow of data packets between a faster rate device and a slower rate device, where the media access control layer throttles the flow of data packets when the data packets are travelling from the faster rate device to the slower rate device, and where the media access control layer speeds the flow of data packets when the data packets are travelling from the slower rate device to the faster rate device.
 19. The device of claim 18 further comprising a buffer connected to the media access control layer, the buffer to store received data packets, where the media access control layer generates pause command to throttle down the flow of data packets when the buffer is full.
 20. The device of 18 where the housing connects to a switch and includes an Ethernet connection. 